home *** CD-ROM | disk | FTP | other *** search
/ CICA 1995 August / CICA - The Ultimate Collection of Shareware for Windows (Disc 2) (August 1995).iso / disc2 / programr / atre27.exe / ATREE_27 / HISTORY.TXT < prev    next >
Text File  |  1992-08-01  |  8KB  |  189 lines

  1. Atree release 2.7
  2. ~~~~~~~~~~~~~~~~~
  3. Changes in 2.7:
  4.  
  5.     - Got rid of LFBATCH.EXE, allow LFEDIT.EXE to process and run 
  6.       large files, just not edit them.  This is because a Windows 3.1
  7.       multiline edit control can only handle about 48K of text.
  8.       Building my own editor to handle larger files is beyond the
  9.       purpose of the atree package. (This limitation should disappear
  10.       in Windows NT, since it uses flat 32bit memory model.)
  11.  
  12.     - Now use comman dialogs in LFEDIT.EXE.  This should work under
  13.       Windows 3.0 as well, since I've included commdlg.dll with the
  14.       package.
  15.  
  16.     - Fixed some display bugs and exit problems in the OCR demo.
  17.  
  18.     - Used Borland C++ 3.1 for compilation with full speed 
  19.       optimizations in the Windows IDE.  Nice product, BC++ 3.1!  If 
  20.       we release another version of this demo software, it'll be for 
  21.       Windows 3.1 only, and probably 386 or better only.  Which means 
  22.       we can gain additional optimizations and speed increases.
  23.  
  24.     - Fixed some documentation errors in atree.hlp, and added a more
  25.       indepth explanation of the training algorithm.
  26.  
  27.     - Finally had the time to really figure out Program Manager DDE,
  28.       so now setup.exe installs the appropriate icons and nice icon
  29.       titles.
  30.  
  31. Changes in 2.6:
  32.  
  33.     - Moved all documentation into atree.hlp.  Documentation updated
  34.       and clarified.  New introduction section.
  35.  
  36.     - Fixed small bug in atree_train relating to getting rid of Status
  37.       box when Cancel was pressed.
  38.  
  39.     - Redid the OCR demo.  Now you can draw your own characters.
  40.       Added rotation and translation to make it an authentic OCR demo.
  41.       It is very impressive!  Although training time can be longer, 
  42.       since we are trainingh on 3 characters instead of 1.
  43.  
  44. Changes in 2.51:
  45.  
  46.     - Added a setup program to add Program Manager groups.
  47.  
  48. Changes in 2.5:
  49.  
  50.     - Big new addition:  A character recognition demo that recognizes
  51.       the letter S in extreme noise, and is able to differentiate
  52.       between a noisy S and a noisy 5.  Training is very fast, about
  53.       15-20 minutes, compared to days for a backprop net on similar
  54.       hardware.
  55.  
  56.     - Removed memory mangement routines we wrote for 2.0, now use the
  57.       Borland C++ 3.0 memory management routines, which are about a
  58.       zillion times faster.  So, no more waiting for encoding
  59.       building; should take at most a minute on VERY large problems.
  60.  
  61.     - Reworked a lot of the I/O routines that are now more compatible
  62.       with the UNIX version, again due to improved Windows support in
  63.       BC++ 3.0.
  64.  
  65.     - Fixed bug in reading in boolean encodings; it used to set high
  66.       and low to 1.0 and 0.0 automatically, but now preserves high and
  67.       low as specified in the training set. After all -1 and 1, or 100
  68.       and 0 are just as valid representations of the two boolean
  69.       states as 1 or 0.
  70.  
  71.     - Fixed bug in boolean bit vector memory allocation.
  72.  
  73.     - The atree Status Window is MUCH improved, and no longer is ill
  74.       behaved.  Now has a cancel button!  Now you don't have to exit
  75.       out of the program to stop training!
  76.  
  77.     - LF rewritten to only keep one tree in memory at a time during 
  78.       training, and only _voter_ number of trees in memory during 
  79.       evaluation.  Evaluation is done using fast trees.
  80.  
  81.     - The parser code for LF has been changed dramatically to allow it
  82.       to be well behaved under Windows.  It was not re-entrant before,
  83.       and caused all kinds of problems if you tried to run a buggy
  84.       program twice from the same session of LFEDIT.
  85.  
  86.     - LFEDIT will now highlight parse errors in the edit window.
  87.  
  88.     - Renamed LF.EXE to LFBATCH.EXE to differentiate it better from
  89.       LFEDIT.EXE.
  90.  
  91.     - Added Lf Status Dialog to track progress of train set building
  92.       and test set evaluation.  Has cancel button enabled during test
  93.       evaluation.
  94.  
  95.     - LF improved semantically.  Added 4 example files that show how
  96.       to use every lf language feature, with documentation.
  97.  
  98.     - Removed sphere.lf.  Just too darn big.
  99.  
  100.     - Added abs_sine.lf.  Learning the absolute value of sine is
  101.       something backprop has trouble with.
  102.  
  103.     - Runs well under Windows 3.1, and I haven't had a UAE or GPF in
  104.       days.  Testing has been a lot more extensive for this product.
  105.  
  106.  
  107. Changes in 2.0:
  108.  
  109.     - Added several new functions to the atree library, including tree
  110.       and coding I/O, see atree.h.
  111.  
  112.     - The atree structures have been totally revamped, and now can fit
  113.       into 12 bytes (for nodes) and 4 bytes (for leaves).
  114.  
  115.     - atree_train() has been changed to present the whole training set
  116.       during one epoch, although in a shuffled form.  Before, we just
  117.       randomly picked vectors out of the training set, leaving the
  118.       possiblity of a large number of vectors not being presented
  119.       during an epoch.  Also, we check our estimate of success after
  120.       adaptation against the whole training set (with no adaptation)
  121.       to give the ACTUAL number correct.  This step only occurs when 
  122.       training has reached the maximum allowed number of epochs, or
  123.       when the estimator indicates the tree has gotten the necessary 
  124.       amount of vectors correct.  If the actual is lower than the
  125.       estimate, we keep training for another epoch, up until the
  126.       maximum number of epochs has been reached.
  127.  
  128.     - Memory allocation for trees now the same as for bit vectors (and
  129.       every other dynamically allocated object!): the WinMem_Malloc
  130.       routine is used!  Thanks to Rolf Manderschied for coming up with
  131.       a better build_tree!  Trees are now allocated from free lists,
  132.       and are returned to the free lists when destroyed.
  133.  
  134.     - Changed the multiplexor function in mult.exe: can now specify
  135.       the number of control bits at compile time.
  136.  
  137.     - Because of the C library I/O routines, the atree library is no
  138.       longer in a .DLL.  Instead, atree.c must be compiled into
  139.       applications.  Sorry!  But I didn't feel like rewriting the
  140.       whole standard C I/O library to index data by the data segment
  141.       only, instead of the stack segment (in .DLL's, ds != ss).
  142.  
  143.     - As a result of the above, applications need no longer include
  144.       every atree library function in the IMPORTS section of their
  145.       .def files.  However, you DO need to include VERBOSITYWNDPROC in
  146.       the EXPORTS section, along with whatever other Window Procedures
  147.       your application is exporting.
  148.  
  149.     - Improvements to the atree Status window (verbosity output).  It
  150.       doesn't hang around after training is finished.  It flickers
  151.       quite noticeably, though, when calls to atree_train() occur
  152.       rapidly!  If anyone has a better idea... let me know!
  153.  
  154.     - Documentation updated.
  155.  
  156.     - I still don't know how atree.c compiles with Microsoft C...  can
  157.       anyone doing this please contact me?
  158.  
  159.  
  160. Changes in 1.2:
  161.  
  162.     - Redid atree_train verbosity output, no longer have to click
  163.       after every epoch - scrolling window flaky when training two
  164.       trees simultaneously (because of storage of strings in global
  165.       variables - a quick fix, to be sure, but much better than the
  166.       old MessageBoxes!)
  167.  
  168.     - Mult.exe is not a two-bit multiplexor, it's a three-bit
  169.       multiplexor!  Boy, do I feel embarrased!  2^11 elements in
  170.       domain, instead of 2^6, which means that it is a lot harder
  171.       problem than I thought, and would explain the longer training
  172.       times than one would expect from a two-bit multiplexor.
  173.  
  174.     - minor macro name changes to keep Dr. Armstrong happy.
  175.  
  176.  
  177. Changes in 1.1:
  178.  
  179.     - Bug in atree_free() fixed, will free all subtrees now.
  180.  
  181.     - Modified ????_flag assignments in build_tree() that caused flaky 
  182.       learning if memory wasn't initialized to zero first.
  183.  
  184.     - Mult.exe now has verbosity level 1, so it doesn't look like it's
  185.       just sitting there doing nothing.
  186.  
  187.  
  188. -- END --
  189.